Transcoding web resources

ABSTRACT

A transcoding system comprises a mobile communication device that retrieves a web resource using a mobile communication network and the internet via a transcoder. The web resource may comprise a web page intended for use by personal computers (PCs) stored at a web server. The mobile communication device sends a request to the transcoder for the web page, the request including a first URL. In one embodiment, the transcoder recognizes the first URL as relating to a web page on a transcode list. Accordingly, the transcoder retrieves a web page using a second URL based on the first URL according to a mapping record. The transcoder then transcodes the retrieved web page and sends the transcoded web page to the mobile communication device. In another embodiment, the transcoder does not recognize the first URL and instead removes the top level domain of the first URL to generate a truncated URL. The transcoder then retrieves web resources using the truncated URL and variations thereof and, based on an analysis of the web resources retrieved, sends the web resource most likely to be appropriate for the mobile communication device to the device.

This application is a Continuation-In-Part of WIPO Application No.PCT/GB2009/002421, filed Oct. 9, 2009, which designated the UnitedStates, and which claimed the benefit of GB0818641, filed Oct. 10, 2009,the entire disclosures of each are incorporated by reference herein.

FIELD OF THE INVENTION

The present invention relates to providing mobile versions of webresources. The invention has particular, but not exclusive, applicationto enabling the most appropriate mobile web resources available to bedelivered to mobile communication devices and to transcoding webresources for use by mobile communication devices.

BACKGROUND TO THE INVENTION

Most web resources are intended for use by desktop and laptop personalcomputers (PCs). This means that they are often unsuitable for use bymobile communication devices. Web resources, typically web sites and webpages, may include script, graphics, images, animations, video data,audio data, layouts etc. that are not supported by a mobilecommunication device. For example, a web site may include objectsencoded using Java® or Adobe® Flash script, but a mobile communicationdevice may not have the correct software to use such objects. Similarly,an image on a web site may be too large to be displayed on a mobilecommunication device.

In light of this, web resources specifically encoded for use by mobilecommunication devices are sometimes provided. Usually, web resourcesspecifically encoded for use by mobile communication devices are basedon web resources intended for use by PCs. For example, an organisationmay have two web sites, one for use by PCs and the other specificallyencoded for use by mobile communication devices. There is thereforeduplication of effort in providing the same content for use by both PCsand mobile communication devices. For this reason, only large and wellresourced organisations or those with a particular reason to targetmobile communication devices tend to provide web resources specificallyencoded for use by mobile communication devices. There is therefore aneed to make it easier to provide web resources suitable for use bymobile communication devices.

In order to address this need, mobile network operators convert webresources intended for use by PCs to be suitable for use by mobilecommunication devices. This conversion is known as transcoding. When theuser of a mobile communication device seeks to access a given webresource via the mobile communication network, instead of the mobilecommunication device being provided with the web resource itself, it isprovided with a transcoded version of the web resource.

In more detail, the mobile communication device may send a request for aweb resource, which request includes an internet domain name, e.g.“www.bobspizzashop.com”. The mobile network retrieves the web resourcefrom the web server using the internet domain name (or, morespecifically, an Internet Protocol (IP) address for the server at whichthe web resource is located, which IP address can be retrieved from theDomain Name System (DNS) of the internet using the internet domainname). However, instead of delivering the web resource straight to themobile communication device, the mobile communication network firsttranscodes the web resource.

Typically, the transcoding involves identifying the type of mobilecommunication device that made the request and adapting the web resourceto be suitable for that device. For example, if the web resource isencoded using script that is not supported by the type of mobilecommunication device, the web resource may be converted to script thatis supported by the type of mobile communication device. Similarly, animage included in the web resource may be resized to suit thelimitations of the display of the mobile communication device.

The transcoding of web resources by mobile communication networks hassome difficulties. In particular, the transcoding is done without thepermission and often without the knowledge of the owners of the webresources. A web resource may also be transcoded differently bydifferent mobile communication networks. So, even when the owner isaware that transcoding may take place, it can be difficult for them totake account of how a web resource might be transcoded when they firstcreate the web resource. Accordingly, the owners of web resources cannotcontrol user experience of their web resources.

There also exists a difficulty even when an organisation has providedweb resources specifically encoded for use by mobile communicationdevices, e.g. a mobile version of a web site, in that it may provedifficult for a user to locate them. In particular, there is no standardformat of internet domain name for mobile versions of web sites. If aweb site designed for PCs hosted at an IP address associated with theinternet domain name “bobspizzashop.com”, a mobile version of the website might be hosted at an IP address associated with the internetdomain name “bobspizzashop.mobile.com”, “mobile.bobsspizzashop.com”,“m.bobspizzashop.com” or any other internet domain name. This isconfusing for the user and can mean that mobile versions of web sitesare not delivered to mobile communication devices as extensively andreliably as desired.

The present invention seeks to overcome these problems.

SUMMARY OF THE INVENTION

According to a first aspect of the present invention, there is providedmethod of providing a transcoded web resource to a user, the methodcomprising:

-   -   receiving a request from the user, the request including a first        internet domain name;    -   identifying a second internet domain name based on the first        internet domain name;    -   retrieving an existing web resource identified by the second        internet domain name;    -   transcoding the existing web resource into the transcoded web        resource; and    -   transmitting the transcoded web resource to the user.

Similarly, according to a second aspect of the present invention, thereis provided apparatus for providing a transcoded web resource to a user,the apparatus comprising a transcoder for:

-   -   receiving a request from the user, the request including a first        internet domain name;    -   identifying a second internet domain name based on the first        internet domain name;    -   retrieving an existing web resource identified by the second        internet domain name;    -   transcoding the existing web resource into the transcoded web        resource; and    -   transmitting the transcoded web resource to the user.

So, the invention can enable the provider of a web resource defined bythe second internet domain name to allow a transcoded version of thatweb resource to be made available via the first internet domain name.Importantly, this can allow the provider of the web resource, e.g. a website owner, to set up transcoding of the web resource, e.g. their website, very easily. It can also ensure that the provider of the webresource can control the transcoding.

The first and second internet domain names may have different top leveldomains but their main distinctive label may be the same. For example,in the case of a generic top level domain, such as “.com” or “.org”, thesecond level domain is usually indicative of the owner, e.g.“bobspizzashop.com”. The first and second internet domain names of theinvention may therefore have different top level domains but the samesecond level domain, e.g. “bobspizzashop.com” and “bobspizzashop.mobi”.On the other hand, in the case of country code top level domains, thesecond level domain can effectively be generic and only the third leveldomain is usually indicative of the owner, e.g. “bobspizzashop.co.uk”.The first and second internet domain names of the invention maytherefore have different top level domains but the third level domain ofone may be the same as the second level domain of the other, e.g.“bobspizzashop.co.uk” and “bobspizzashop.mobi”.

The first internet domain name preferably translates (using the domainname system of the internet) to an address of a transcoder, whichtranscoder maintains a record that maps the first internet domain nameto the second internet domain name. This can mean that the requestincluding a first internet domain name is directed to the transcoder.The transcoder can map the first internet domain name to the secondinternet domain name based on the record it maintains.

The method may further comprise establishing the record that maps thefirst internet domain name to the second internet domain name byprefixing data in a field of a resource record for the first internetdomain name with the second internet domain name.

Indeed, according to a third aspect of the present invention, there isprovided a method of mapping a first internet domain name to a secondinternet domain name, the method comprising:

-   -   prefixing data in a field of a resource record for the first        internet domain name with the second internet domain name;    -   retrieving the resource record; and    -   extracting the first and second internet domain names to        establish a mapping of the first internet domain name to the        second internet domain name.

Also, according to a fourth aspect of the present invention, there isprovided apparatus for mapping a first internet domain name to a secondinternet domain name, the apparatus comprising processing means for:

-   -   prefixing data in a field of a resource record for the first        internet domain name with the second internet domain name;    -   retrieving the resource record; and    -   extracting the first and second internet domain names to        establish a mapping of the first internet domain name to the        second internet domain name.

This is very convenient as the resource record can propagate using theexisting infrastructure of the domain name system of the internet. Forexample, separate communication of the mapping of the first internetdomain name to the second internet domain name from the web site ownerto the transcoder may not be required. Rather, the mapping effectivelypropagates throughout the domain name system of the internet with theresource record.

Different types of resource record for the first internet domain namecan have the second internet domain name added. Preferably, the resourcerecord may be a name server resource record for the first internetdomain name. This is convenient as the domain name of the name serverthat is usually found in the name server resource record is effectivelyread from right to left by the domain name system of the internet. Theprefixed second internet domain name (at the left hand end) maytherefore be ignored.

Retrieving the resource record may comprise retrieving a zone fileincluding the resource record. For example, the transcoder may retrievethe zone file from the domain name system of the internet periodicallyto extract first and second domain names.

According to a fifth aspect of the present invention, there is provideda method for providing a mobile specific web resource to a mobilecommunication device, the method comprising:

-   -   receiving a request from the mobile communication device, the        request including a first internet domain name comprising a top        level domain and one or more further elements;    -   generating one or more further internet domain names comprising        the one or more further elements;    -   retrieving one or more web resources identified by the one or        more further internet domain names;    -   analysing the one or more web resources to determine which is        most appropriate for delivery to a mobile communication device;        and    -   delivering the most appropriate web resource to the mobile        communication device.

According to a sixth aspect of the present invention, there is providedan apparatus for providing a mobile specific web resource to a mobilecommunication device, the apparatus comprising a server for:

-   -   receiving a request from a mobile communication device, the        request including a first internet domain name comprising a top        level domain and one or more further elements;    -   generating further internet domain names each including the at        least one or more further elements;    -   retrieving web resources identified by the further internet        domain names;    -   analysing the retrieved web resources to determine which is most        appropriate for delivery to the mobile communication device; and    -   delivering the most appropriate web resource to the mobile        communication device.

So, the present invention can assist in the identification andsubsequent delivery of web resources that are appropriate for a mobilecommunication device. An initial request may be made using a firstinternet domain name which contains a top level domain. This top leveldomain may be removed and further internet domain names containing atleast some of the remaining elements of the first internet domain namemay be generated. Web resources identified by these generated internetdomain names can be retrieved where possible and then analysed todetermine which of these is most appropriate for the mobilecommunication device. This allows web resources that are appropriate formobile communication devices to be identified and delivered to the user.

For example, a web resource owner may have a web page designed for PCshosted at an IP address associated with internet domain name“bobspizzashop.com” and a version of this web page specifically encodedfor mobile communication devices hosted at an IP address associated withinternet domain name “mobile.bobspizzashop.com”. A user may make arequest using the internet domain name “bobspizzashop.com.mobi”. Bygenerating second internet domain names that contain the string“bobspizzashop”, both “bobspizzashop.com” and “mobile.bobspizzashop.com”can be identified and the web pages hosted at the IP addressesassociated with those internet domain names can be retrieved. It canthen be determined that the web page hosted at the IP address associatedwith the domain name “mobile.bobspizzashop.com” is the most appropriatefor mobile communication devices, and that web page hosted can bedelivered to the user.

Preferred embodiments of the present invention allow the mobilecommunication device to request internet domain names having aparticular top level domain, such as “.mobi”, in the knowledge that thiswill cause the server to determine the most appropriate web resource forthe mobile communication device. For example, in preferred embodiments aparticular top level domain, such as “.mobi”, may be suffixed toexisting internet domain names in order to cause the server to determinethe most appropriate web resource for the mobile communication device.

Preferably, the first internet domain name and the one or more furtherinternet domain names have different top level domains but the same maindistinctive label. For instance, in the example given above, the maindistinctive label is “bobspizzashop”. This is relatively memorable for auser, who does not need to remember other aspects of the internet domainname at which the web resources designed for the mobile communicationdevice are hosted in order to access them.

Preferably, the first internet domain name is mapped to an IP address ofthe most appropriate web resource. For example, the first internetdomain name may be stored together with an IP address of the mostappropriate web resource. This allows the determined web resource to bedelivered when subsequent requests are made for the first internetdomain name without the requirement to repeat the steps of generatingone or more further internet domain names comprising the one or morefurther elements; retrieving one or more web resources identified by theone or more further internet domain names; and analysing the one or moreweb resources to determine which is most appropriate for delivery to amobile communication device.

Referring again to the example given above, it may be that the webresources hosted at internet domain name “mobile.bobspizzashop.com” areimperfectly designed for the specific mobile communication device thathas made the request. Alternatively, the web site owner may have onlyprovided a web site for PCs, such as that hosted at internet domain name“bobspizzashop.com”. For this reason, the server may be a transcoder. Insuch circumstances, it is preferable that the most appropriate webresource is transcoded before being delivered to the mobilecommunication device.

Preferably, the transcoded web resource is stored. This allows thetranscoded web resources to be delivered at a later date without therequirement for transcoding step to occur again. In preferred examples,the transcoded web page is stored for a pre-determined period of time.As such, changes in the most appropriate web resource are reflected inthe transcoded web resource delivered to the mobile communication deviceafter this period expires.

According to a seventh aspect of the present invention, there isprovided a method of providing a mobile specific web resource to amobile communication device, the method comprising

-   -   receiving a request from a mobile communication device, the        request including a first internet domain name comprising a top        level domain and one or more further elements;    -   generating a truncated internet domain name by removing the top        level domain from the first internet domain name;    -   retrieving a web resource identified by the truncated internet        domain name;    -   analysing the retrieved web resource to determine whether it is        appropriate for the mobile communication device;    -   transcoding the web resource if it is not appropriate for the        mobile communication device; and    -   delivering the web resource to the mobile communication device.

According to an eighth aspect of the present invention, there isprovided an apparatus for providing a mobile specific web resource to amobile communication device, the apparatus comprising a server for:

-   -   receiving a request from a mobile communication device, the        request including a first internet domain name comprising a top        level domain and one or more further elements;    -   generating a truncated internet domain name by removing the top        level domain from the first internet domain name;    -   retrieving a web resource identified by the truncated internet        domain name;    -   analysing the retrieved web resource to determine whether it is        appropriate for the mobile communication device;    -   transcoding the web resource if it is not appropriate for the        mobile communication device; and    -   delivering the web resource to the mobile communication device.

So, the seventh and eighth aspects of the present invention can alsoassist in the identification and subsequent delivery of web resourcesthat are appropriate for a mobile communication device. In particular, arequest from a mobile communication device can use a first internetdomain name made up of a truncated internet domain name and a top leveldomain, wherein the truncated internet domain name identifies a knownweb resource. When the request is received, the truncated internetdomain name may be generated by removing the top level domain, the webresource may then be retrieved and analysed, and the web resource maythen be transcoded in dependence on this analysis. That is, the webresource can be transcoded after an assessment has been made of whetherthis is necessary.

Use of the words “apparatus”, “processor”, “transcoder” and so on areintended to be general rather than specific. Whilst these features ofthe invention may be implemented using an individual component, such asa computer or a central processing unit (CPU), they can equally well beimplemented using other suitable components or a combination ofcomponents. For example, the invention could be implemented using ahard-wired circuit or circuits, e.g. an integrated circuit, or usingembedded software. It can also be appreciated that the invention can beimplemented, at least in part, using computer program code. According toanother aspect of the present invention, there is therefore providedcomputer software or computer program code adapted to carry out themethod described above when processed by a computer processing means.The computer software or computer program code can be carried bycomputer readable medium. The medium may be a physical storage mediumsuch as a Read Only Memory (ROM) chip. Alternatively, it may be a disksuch as a Digital Video Disk (DVD-ROM) or Compact Disk (CD-ROM). Itcould also be a signal such as an electronic signal over wires, anoptical signal or a radio signal such as to a satellite or the like. Theinvention also extends to a processor running the software or code, e.g.a computer configured to carry out the method described above.

Preferred embodiments of the invention are described below, by way ofexample only, with reference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram of a transcoding system;

FIG. 2 is a sequence diagram illustrating activation of the transcodingsystem;

FIG. 3 is a sequence diagram illustrating use of the transcoding system;and

FIG. 4 is a sequence diagram illustrating an alternative use of thetranscoding system.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring to FIG. 1, a transcoding system 1 comprises a mobilecommunication device 2, such as a mobile telephone, smart phone,Personal Digital Assistant (PDA) or such like, that retrieves a webresource using a mobile communication network 3 and the internet 4 via atranscoder 5. The mobile communication network 3 is typically aterrestrial or satellite mobile communication network. In otherexamples, the mobile communication device 2 uses a Wireless Local AreaNetwork (WLAN) or such like to connect to the internet 4 instead of themobile communication network 3. The mode of connection to the internet 4is inessential, but the mobile communication device 2 itself is usuallycharacterised by limitations in its ability to use web resourcesintended for use by desktop and laptop personal computers (PCs).

Web resources include web sites, web pages, feeds, data or video filesand so on. In the illustrated example, a web page intended for use byPCs is stored at a web server 6. The web page is part of a web siteunder the control of a web site owner 7. In this example, the web server6 is also under the control of the web site owner 7, but in otherexamples, the web server 6 may be controlled by another party, such asan Internet Service Provider (ISP), on behalf of the web site owner 7.

A registrar 8 is responsible for registering new internet domain nameswith an internet domain name registry 9, which for simplicity isconsidered to be part of the internet 4 in FIG. 1. In this example, theregistry 9 is responsible for the generic Top Level Domain (TLD) “.mobi”and the registrar 8 handles requests by registrants to register internetdomain names with the “.mobi” TLD. The registrar 8 also offers toestablish a transcoding service. This is explained in more detail below,considering a case in which the web site owner 7, who owns the existingweb site stored at the web server 6, is the registrant for a newinternet domain name with the “.mobi” TLD.

Referring to FIG. 2, during the process of registering a new internetdomain name with the “.mobi” TLD, e.g. “bobspizzashop.mobi”, at step S1the registrar 8 offers the transcoding service to the web site owner 7.At step S2, the web site owner 7 accepts the offer and agrees topurchase the transcoding service. During this exchange, the registrarestablishes the internet domain name of the web site stored on the webserver 6, e.g. “bobspizzashop.com”, on which the transcoding service isto be based.

At step S3, the registrar updates its own records with information aboutthe owner 7, the new internet domain name and the internet domain nameof the web site on which the transcoding service is to be based. At stepS4, the registrar 8 sends a request to the registry 9 to create aresource record for the new internet domain name. In this example, theregistrar 8 sends a <create> request at step S4 using ExtensibleProvisioning Protocol (EPP), as described in the Network Working GroupRequest for Comments (RFC) 4930 that can be found athttp://tools.ietf.org/html/rfc4930.

The EPP <create> request maps the new internet domain name, e.g.“bobspizzashop.mobi” to the Internet Protocol (IP) address of thetranscoder 5. The EPP <create> request is required to designate at leastone name server for the new internet domain name. The designationcomprises an internet domain name for the designated name serverprovided in a name server field of the EPP <create> request. Typically,the registrar 8 provides the internet domain name for a default nameserver when a new internet domain name is registered, e.g.“dnsserver.mobi”. However, any name server in the Domain Name System(DNS) 10 of the internet 4 can be designated.

Advantageously, the EPP <create> request also includes the internetdomain name of the web site stored on the web server 6, e.g.“bobspizzashop.com”, on which the transcoding service is to be based.There is no dedicated field for inclusion of this internet domain namein the EPP system. However, the internet domain name can be prefixed tothe internet domain name of the designated name server. So, in the givenexample, the name server field of the EPP <create> request might includethe string “bobspizzashop.com.dnsserver.mobi”. This same string isrecorded by the registry 9 in the name server resource record for theinternet domain name “bobspizzashop.mobi” and propagates throughout theDNS 10 by the exchange of zone files, as described athttp://www.dns.net.

In particular, the transcoder 5 uses the DNS 10 to update its records.At steps S5 and S6, the transcoder 5 retrieves the zone file for the“.mobi” TLD from the registry 9. The zone file includes the resourcerecord for the newly registered internet domain name, in the givenexample “bobspizzashop.mobi”. The transcoder 5 checks the name serverresource record and discovers the internet domain name of the web sitestored on the web server 6 prefixed to the internet domain name of thedesignated name server, e.g. the string“bobspizzashop.com.dnsserver.mobi”. At step S7, the transcoder 5recognises this as defining mapping between the new internet domainname, e.g. “bobspizzashop.mobi”, and the internet domain name of the website stored on the web server 6, e.g. “bobspizzashop.com”. Accordingly,at step S8, the transcoder 5 adds the new internet domain name, e.g.“bobspizzashop.mobi”, to its list of domain names for which thetranscoding service is activated and stores the mapping of this newinternet domain name to the web site stored on the web server 6, e.g.“bobspizzashop.com”, as a mapping record.

Referring to FIG. 3, at step S9 the mobile communication device 2browses to a web page at the new internet domain name, e.g.“bobspizzashop.mobi/webpage”. Assuming the mobile communication device 2does not know the IP address to which the new internet domain namerelates, this initiates a lookup query to the DNS 10, at step S10. TheDNS 10 returns the IP address of the transcoder 5 at step S11. Usingthis IP address, the mobile communication device 2 sends a HyperTextTransfer Protocol (HTTP) request to the transcoder 5 for the web page,e.g. using Uniform Resource Locator (URL)“http://bobspizzashop.mobi/webpage”, at step S12.

The transcoder 5 recognises the new internet domain name, e.g.“bobspizzashop.mobi”, as a domain name on its transcode list.Accordingly, at step S13, the transcoder 5 retrieves the mapping recordfor the domain name. This retrieval returns the internet domain name ofthe web site stored on the web server 6, e.g. “bobspizzashop.com”. Usingthis domain name, at step S14 the transcoder 5 sends an HTTP request tothe web server 6 for the web page, e.g. using the URL“http://bobspizza.com/webpage”. Of course, it may be necessary for thetranscoder 5 to perform a lookup query to the DNS 10 in order toestablish the IP address of the web server 6 before it can send the HTTPrequest, but this is omitted from FIG. 3 for clarity.

The web server 6 returns the web page to the transcoder 5 at step S15.At step S16, the transcoder 5 transcodes the web page. The transcodingtypically comprises identifying the type of the mobile communicationdevice 2 that requested the web page and altering the web page to besuitable for that device 2. Once the web page has been suitablytranscoded, the transcoder 5 sends the transcoded web page to the mobilecommunication device 2 at step S17.

In a further embodiment of the invention, a preview of the transcodedweb page can be provided to the web site owner 7 before the web siteowner agrees to purchase the transcoding service at step S2. This isachieved by the registrar 5 using HyperText Markup Language (HTML) codeto access the transcoder 5. Suitable HTTP code might retrieve atranscoded version of a web page from the web site stored at the server6 and present it in an IFRAME of a web page controlled by the registrar5. This allows the owner 7 to check the transcoding of their web sitebefore purchasing the transcoding service.

The embodiments described above relate to circumstances in which the website owner 7 of an existing web site stored on the web server 6registers the new internet domain name, e.g. “bobspizzashop.mobi”, withthe registrar 8 and subscribes to a transcoding service that delivers atranscoded version of the existing web site when the mobilecommunication device 2 requests web resources using the new internetdomain name. However, in other circumstances, the web site owner 7 hasalready prepared mobile specific web resources, such as a version of theexisting web site stored on the web server 6 suitable for mobiledevices, and these mobile specific web resources are stored on the webserver 6 alongside the existing web site. The difficulty in suchcircumstances may be alerting the user of the mobile communicationdevice to the existing mobile specific web resources, and particularlymaking the user aware of the address of the mobile specific webresource.

For example, consider a web site owner 7 who has established a web pagefor PCs hosted at an IP address associated with internet domain name“bobspizzashop.com” and has also established a web page specificallyencoded for mobile communication devices (a “mobile web page”) hosted atan IP address associated with internet domain name“mobile.bobspizzashop.com”. A user wishing to access the web resourcesbelonging to the web site owner 7 on a mobile communication device 2 maybe unaware of the existence of the mobile web page. Even if aware of theexistence of the mobile web page, the user may not know the internetdomain name of the mobile web page and may therefore be unable to accessit. However, the user is aware of the internet domain name associatedwith the IP address at which the web page for PCs is hosted (i.e.“bospizzashop.com”).

In the preferred embodiment of the present invention, the user maydiscover the existence and location of a mobile web page by adding the“.mobi” top level domain to the known internet domain when browsing.That is, the user of the mobile communication device 2 may browse to“bobspizzashop.com.mobi”. Moreover, if no mobile web page exists, theuser of the mobile communication device 2 may use the same technique,i.e. browsing to “bobspizzashop.com.mobi”, to access a transcodedversion of the web page for PCs at “bobspizzashop.com”. This transcodedversion of the web page for PCs is adapted so as to be suitable for themobile communication device 2. In order to facilitate this, theregistrar 8 generates a variety of new internet domain names having“.mobi” as the TLD and another element as the second level domain. Theseother elements used as second level domains are typically those knownfor use as top level domains for existing web resources. For example,the registrar 8 may generate “com.mobi”, where “com” is the second leveldomain and “.mobi” is the top level domain. Other domain names that theregistrar 8 may generate can include “uk.mobi”, “org.mobi”, “info.mobi”and so on. In general the registrar generates domain names that useexisting generic top level domains (gTLDs), such as “.com”, “info”,“.co” and so on, as the second level domain and “.mobi” as the top leveldomain.

The registrar 8 then registers these domain names with the registry 9.Specifically, the registrar 8 then sends requests to the registry 9 tocreate resource records for the new internet domain names. In thisexample, the registrar 8 sends <create> requests using ExtensibleProvisioning Protocol (EPP), as described in the Network Working GroupRequest for Comments (RFC) 4930 that can be found athttp://tools.ietf.org/html/rfc4930. The EPP <create> requests map thenew internet domain names, such as “com.mobi”, to the Internet Protocol(IP) address of the transcoder 5. This mapping of the new internetdomain names to the IP address of the transcoder 5 propagates throughoutthe domain name system (DNS) 10 of the internet through the exchange ofzone files as explained at www.dns.net.

The new internet domain names are mapped to the IP address of thetranscoder 5 in the DNS 10 of the internet in such a manner that theaddition of lower level domains to the new internet domain names doesnot change this mapping. For example, where the new internet domain nameis “com.mobi”, any internet domain name of the form “*.com.mobi”, where“*” is a wildcard which may represent any allowable internet domain nameelement, is mapped to the transcoder 5.

Preferably, new internet domain names which use the majority of or evenall existing gTLDs as a second level domain in combination with “.mobi”as a TLD are registered. Accordingly, when browsing the internet, a usermay add “.mobi” to the end of an existing internet domain name in orderto access the transcoder 5 and make use of the invention as describedbelow.

Referring to FIG. 4, in the present embodiment, steps S18 to S21correspond to steps S9 to S12 of the embodiment described with referenceto FIGS. 2 and 3. In other words, at step S18 the mobile communicationdevice 2 browses to a web page at an internet domain name having the“.mobi” top level domain, e.g. “bobspizzashop.com.mobi”. Assuming themobile communication device 2 does not know the IP address associatedwith the internet domain name “bobspizzashop.com.mobi”, this initiates alookup query to the DNS 10, at step S19. The DNS 10 provides the IPaddress of the transcoder 5 to the mobile communication device 2 at stepS20. Using this IP address, the mobile communication device 2 sends aHyperText Transfer Protocol (HTTP) request to the transcoder 5 for theweb page, e.g. using Uniform Resource Locator (URL)“http://bobspizzashop.com.mobi/webpage”, at step S21.

The transcoder then 5 generates further internet domain names using theinternet domain name “bobspizzashop.com.mobi”. In particular, thetranscoder 5 generates a truncated internet domain name by removing thetop level domain name, i.e. “.mobi”, thereby leaving the internet domainname associated with the PC web page, i.e. “bobspizzashop.com”. Thetranscoder may additionally generate a number of potential internetdomain names based on the truncated internet domain name. For example,the transcoder may generate potential internet domain names“m.bobspizzashop.com” and “mobile.bobspizzashop.com”. The potentialinternet domain names typically share the main distinctive element (inthis case, “bobspizzashop”) with the truncated internet domain name andthe internet domain name used in the request sent by the mobilecommunication device 2, while they may add or remove other elements toor from the truncated internet domain name.

At step S22, the transcoder 5 initiates lookup queries to the DNS 10 forthe further internet domain names it has generated, i.e. the truncatedinternet domain name and the potential internet domain names. Forexample, the transcoder 5 may initiate lookup queries for“bobspizzashop.com”, “m.bobspizzashop.com” and“mobile.bobspizzashop.com”.

At step S23, the DNS 10 provides the results of the lookup queries tothe transcoder 5. These will include the IP address associated with thePC web page at the truncated internet domain name “bobspizzashop.com” aswell any IP addresses that are associated with the potential internetdomain names. It is likely that not all of the prospective internetdomain names used in the lookup queries will have a validly assigned IPaddress, in which case the DNS 10 returns either no result or aconventional error message for these internet domain names.

Using the IP addresses received from the DNS 10, the transcoder 5 sendsHyperText Transfer Protocol (HTTP) requests, at step S24, to the webserver 6 for web pages using Uniform Resource Locator (URLs) based onthe truncated internet domain name and the potential internet domainnames, such as “http://bobspizzashop.com/webpage”,“http://mobile.bobspizzashop.com/webpage”,“http://m.bobspizzashop.com/webpage”, “http://bobspizzashop.com/mobile”and so on. Although a single web server 6 is illustrated in FIG. 2, theskilled person will appreciate that different web pages may be hosted bydifferent web servers. The IP addresses received by the transcoder 5allow it to direct its request to the correct web server(s).

The web server 6 then returns the requested web pages to the transcoder5, at step S25. These will include at least the PC web page associatedwith internet domain name “bobspizzashop.com” and may include other webpages which the transcoder 5 has located, which may or may not beoptimised for use by mobile communication device 2. The transcoder 5analyses the returned web pages to determine which is the mostappropriate for delivery to the mobile communication device 2. In theexample described above, the web page identified by internet domain name“bobspizzashop.com” is designed for viewing on a PC, while the web pageidentified by internet domain name “mobile.bobspizzashop.com” isdesigned for viewing on the mobile communication device 2. It istherefore preferable to deliver the web page from“mobile.bobspizzashop.com” to the mobile communication device 2, insteadof that from “bobspizzashop.com”.

There may be multiple web pages designed for mobile communicationdevices 2. For example, a first mobile web page designed for mobilecommunication devices 2 may be stored at an address associated withinternet domain name “mobile.bobspizzashop.com” and a second web pagedesigned for mobile communication devices 2 may be stored at an addressassociated with internet domain name “m.bobspizzashop.com”. In thiscase, the transcoder 5 will determine which of the web pages designedfor mobile communication devices 2 is most appropriate for theparticular mobile communication device 2 that made the original request.

In some cases, it may be desirable to transcode the web page determinedas most suitable for the mobile communication device 2. This may bebecause none of the identified web pages are designed for mobilecommunication devices in general (for example, if the mobile web site atinternet domain name “mobile.bobspizzashop.com” did not exist), orbecause they have not been optimised for the particular mobilecommunication device 2 that made the initial request at step S1. At stepS26, the transcoder 5 transcodes the determined web page if required.

The web page determined to be most appropriate for the mobilecommunication device is then returned to the mobile communicationdevice, at step S27. As explained above, the web page returned to themobile communication device may or may not have been transcoded by thetranscoder 5.

It is notable that the transcoder 5 has now established which internetdomain name associated with “bobspizzashop.com.mobi” provides the mostappropriate web page for the mobile communication device 2. In order toavoid duplication of effort, and to reduce lag times in future, at stepS28, the transcoder 5 stores this information. That is, the transcoder 5maps the internet domain name “bospizzashop.com.mobi” to the address ofthe most appropriate web page. The transcoder 5 may also store the mostappropriate web page itself. The transcoded version of the web page mayalso be stored. As such, future requests for “bobspizzashop.com.mobi”are dealt with more efficiently without the requirement to identify IPaddresses by trying a variety of lookup queries at the DNS 10. This isdescribed below with reference to steps S29 to S32.

At step S29 a subsequent request for “bobspizzashop.com.mobi” is made.For clarity, this subsequent request is indicated as coming from mobilecommunication device 2, although in practice it could originate with adifferent mobile communication device. On receiving the request, thetranscoder 5 recognises the internet domain name“bobspizzashop.com.mobi” as this information has been saved by thetranscoder 5 at step S28. The transcoder 5 has also saved the URL of theweb page which was determined to be most appropriate for delivery to themobile communication device 2. Accordingly, the transcoder 5 may usethis information to request the most appropriate web site from the webserver 6, at step S30. The web server 6 returns the web page to thetranscoder 5, at step S31, and this is subsequently forwarded to themobile communication device 2, at step S32.

If the web page has been previously transcoded by transcoder 5, thenthere is no need for the transcoder 5 to obtain the web page from theweb server 6 again (steps S30 and S31). In these circumstances, thetranscoded web page is simply returned to the mobile communicationdevice 2 rather than returning the web page (step S32).

Information may be stored by the transcoder 5 for a limited period toensure that content delivered to the mobile communication device 2reflects the current state of the web site. For example, transcodedversions of web pages may be stored for a week, a day, or any otherappropriate time period. The appropriate time period may vary accordingto the type of content held on the web page. For example, a news webpage may be expected to be updated regularly, meaning that it would onlybe appropriate to store a transcoded version of the page for a shortperiod, if at all.

The described embodiments of the invention are only examples of how theinvention may be implemented. Modifications, variations and changes tothe described embodiments will occur to those having appropriate skillsand knowledge. In particular, it is envisaged that the transcodingservice could be activated after a new internet domain name has beenregistered. In this case, an EPP <update> request may be sent instead ofan EPP <create> request at step S4 in FIG. 2. It is also envisaged that,as well as the transcoder retrieving a zone file at steps S5 and S6 toupdate the transcode list (which may occur only once a day), thetranscoder 5 may perform a look up to the DNS 10 whenever it receives anHTTP request including an internet domain name not on the transcodelist. This ensures prompt activation of the transcoding service. Thesemodifications, variations and changes may be made without departure fromthe scope of the invention defined in the claims and its equivalents.

1. A method of providing a transcoded web resource to a user, the methodcomprising: establishing a record that maps the first internet domainname to the second internet domain name by prefixing data in a field ofa resource record for the first internet domain name with the secondinternet domain name; receiving a request from the user, the requestincluding a first internet domain name; identifying a second internetdomain name based on the first internet domain name; retrieving anexisting web resource identified by the second internet domain name;transcoding the existing web resource into the transcoded web resource;and transmitting the transcoded web resource to the user.
 2. The methodof claim 1, wherein the first and second internet domain names havedifferent top level domains but the same main distinctive label.
 3. Themethod of claim 1, wherein the first internet domain name translates toan address of a server, which server maintains a record that maps thefirst internet domain name to the second internet domain name.
 4. Amethod of mapping a first internet domain name to a second internetdomain name, the method comprising: prefixing data in a field of aresource record for the first internet domain name with the secondinternet domain name; retrieving the resource record; and extracting thefirst and second internet domain names to establish a mapping of thefirst internet domain name to the second internet domain name.
 5. Themethod of claim 4, wherein the field of the resource record is a nameserver field for the first internet domain name.
 6. The method of claim4, wherein retrieving the resource record comprises retrieving a zonefile including the resource record.
 7. A method of providing a mobilespecific web resource to a mobile communication device, the methodcomprising receiving a request from a mobile communication device, therequest including a first internet domain name comprising a top leveldomain and one or more further elements; generating a truncated internetdomain name by removing the top level domain from the first internetdomain name; retrieving a web resource identified by the truncatedinternet domain name; analyzing the retrieved web resource to determinewhether it is appropriate for the mobile communication device;transcoding the web resource if it is not appropriate for the mobilecommunication device; and delivering the web resource to the mobilecommunication device.
 8. Apparatus for providing a transcoded webresource to a user, the apparatus comprising a transcoder with aprocessor for establishing a record that maps the first internet domainname to the second internet domain name by prefixing data in a field ofa resource record for the first internet domain name with the secondinternet domain name; receiving a request from the user, the requestincluding a first internet domain name; identifying a second internetdomain name based on the first internet domain name; retrieving anexisting web resource identified by the second internet domain name;transcoding the existing web resource into the transcoded web resource;and transmitting the transcoded web resource to the user.
 9. Apparatusfor mapping a first internet domain name to a second internet domainname, the apparatus comprising a processor that: prefixes data in afield of a resource record for the first internet domain name with thesecond internet domain name; retrieves the resource record; and extractsthe first and second internet domain names to establish a mapping of thefirst internet domain name to the second internet domain name. 10.Apparatus for providing a mobile specific web resource to a mobilecommunication device, the apparatus comprising a server with a processorfor: receiving a request from a mobile communication device, the requestincluding a first internet domain name comprising a top level domain andone or more further elements; generating a truncated internet domainname by removing the top level domain from the first internet domainname; retrieving a web resource identified by the truncated internetdomain name; analyzing the retrieved web resource to determine whetherit is appropriate for the mobile communication device; transcoding theweb resource if it is not appropriate for the mobile communicationdevice; and delivering the web resource to the mobile communicationdevice.